* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

/* The Grid ---------------------- */
.row { width: 996px; max-width: 100%; min-width: 768px; margin: 0 auto; }
.row .row { width: auto; max-width: none; min-width: 0; margin: 0 -18px; }
.row.collapse .column, .row.collapse .columns { padding: 0; }
.row .row { width: auto; max-width: none; min-width: 0; margin: 0 -18px; }
.row .row.collapse { margin: 0; }
.column, .columns { float: left; min-height: 1px; margin-bottom: 8px; padding: 0 18px; position: relative; }
.column.centered, .columns.centered { float: none; margin: 0 auto; }
[class*="column"] + [class*="column"]:last-child { float: left; }
[class*="column"] + [class*="column"].end { float: left; }
.row .one { width: 8.333%; }
.row .two { width: 16.667%; }
.row .three { width: 25%; }
.row .four { width: 33.333%; }
.row .five { width: 41.667%; }
.row .six { width: 50%; }
.row .seven { width: 58.333%; }
.row .eight { width: 66.667%; }
.row .nine { width: 75%; }
.row .ten { width: 83.333%; }
.row .eleven { width: 91.667%; }
.row .twelve { width: 100%; }
.row .offset-by-one { margin-left: 8.333%; }
.row .offset-by-two { margin-left: 16.667%; }
.row .offset-by-three { margin-left: 25%; }
.row .offset-by-four { margin-left: 33.333%; }
.row .offset-by-five { margin-left: 41.667%; }
.row .offset-by-six { margin-left: 50%; }
.row .offset-by-seven { margin-left: 58.333%; }
.row .offset-by-eight { margin-left: 66.667%; }
.row .offset-by-nine { margin-left: 75%; }
.row .offset-by-ten { margin-left: 83.333%; }
.push-two { left: 16.667%; }
.pull-two { right: 16.667%; }
.push-three { left: 25%; }
.pull-three { right: 25%; }
.push-four { left: 33.333%; }
.pull-four { right: 33.333%; }
.push-five { left: 41.667%; }
.pull-five { right: 41.667%; }
.push-six { left: 50%; }
.pull-six { right: 50%; }
.push-seven { left: 58.333%; }
.pull-seven { right: 58.333%; }
.push-eight { left: 66.667%; }
.pull-eight { right: 66.667%; }
.push-nine { left: 75%; }
.pull-nine { right: 75%; }
.push-ten { left: 83.333%; }
.pull-ten { right: 83.333%; }
img, object, embed { max-width: 100%; height: auto; }
img { -ms-interpolation-mode: bicubic; }
#map_canvas img, .map_canvas img { max-width: none!important; }

/* Nicolas Gallagher's micro clearfix */
.row { *zoom: 1; }
.row:before, .row:after { content: ""; display: table; }
.row:after { clear: both; }

/* Mobile Grid and Overrides ---------------------- */
@media only screen and (max-width: 768px) { body { -webkit-text-size-adjust: none; -ms-text-size-adjust: none; width: 100%; min-width: 0; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
.row { width: auto; min-width: 0; margin-left: 0; margin-right: 0; }
.column, .columns { width: auto !important; float: none; }
.column:last-child, .columns:last-child { float: none; }
[class*="column"] + [class*="column"]:last-child { float: none; }
.column:before, .columns:before, .column:after, .columns:after { content: ""; display: table; }
.column:after, .columns:after { clear: both; }
.offset-by-one, .offset-by-two, .offset-by-three, .offset-by-four, .offset-by-five, .offset-by-six, .offset-by-seven, .offset-by-eight, .offset-by-nine, .offset-by-ten { margin-left: 0 !important; }
.push-two, .push-three, .push-four, .push-five, .push-six, .push-seven, .push-eight, .push-nine, .push-ten { left: auto; }
.pull-two, .pull-three, .pull-four, .pull-five, .pull-six, .pull-seven, .pull-eight, .pull-nine, .pull-ten { right: auto; }

/* Mobile 4-column Grid */
.row .mobile-one { width: 25% !important; float: left; padding: 0 15px; }
.row .mobile-one:last-child { float: left; }
.row.collapse .mobile-one { padding: 0; }
.row .mobile-two { width: 50% !important; float: left; padding: 0 15px; }
.row .mobile-two:last-child { float: left; }
.row.collapse .mobile-two { padding: 0; }
.row .mobile-three { width: 75% !important; float: left; padding: 0 15px; }
.row .mobile-three:last-child { float: left; }
.row.collapse .mobile-three { padding: 0; }
.row .mobile-four { width: 100% !important; float: left; padding: 0 15px; }
.row .mobile-four:last-child { float: left; }
.row.collapse .mobile-four { padding: 0; }
.push-one-mobile { left: 25%; }
.pull-one-mobile { right: 25%; }
.push-two-mobile { left: 50%; }
.pull-two-mobile { right: 50%; }
.push-three-mobile { left: 75%; }
.pull-three-mobile { right: 75%; } }

/* Block Grids ---------------------- */
/* These are 2-up, 3-up, 4-up and 5-up ULs, suited
for repeating blocks of content. Add 'mobile' to
them to switch them just like the layout grid
(one item per line) on phones

For IE7/8 compatibility block-grid items need to be
the same height. You can optionally uncomment the
lines below to support arbitrary height, but know
that IE7/8 do not support :nth-child.
-------------------------------------------------- */
.block-grid { display: block; overflow: hidden; padding: 0; }
.block-grid > li { display: block; height: auto; float: left; }
.block-grid.one-up { margin: 0; }
.block-grid.one-up > li { width: 100%; padding: 0 0 15px; }
.block-grid.two-up { margin: 0 -15px; }
.block-grid.two-up > li { width: 50%; padding: 0 15px 15px; }

/*  .block-grid.two-up>li:nth-child(2n+1) {clear: left;} */
.block-grid.three-up { margin: 0 -12px; }
.block-grid.three-up > li { width: 33.33%; padding: 0 12px 12px; }

/*  .block-grid.three-up>li:nth-child(3n+1) {clear: left;} */
.block-grid.four-up { margin: 0 -10px; }
.block-grid.four-up > li { width: 25%; padding: 0 10px 10px; }

/*  .block-grid.four-up>li:nth-child(4n+1) {clear: left;} */
.block-grid.five-up { margin: 0 -8px; }
.block-grid.five-up > li { width: 20%; padding: 0 8px 8px; }

/*  .block-grid.five-up>li:nth-child(5n+1) {clear: left;} */
/* Mobile Block Grids */
@media only screen and (max-width: 768px) { .block-grid.mobile { margin-left: 0; }
  .block-grid.mobile > li { float: none; width: 100%; margin-left: 0; } }

/* Labels ---------------------- */
.label { padding: 1px 4px 2px; font-size: 12px; font-weight: bold; text-align: center; text-decoration: none; line-height: 1; white-space: nowrap; display: inline; position: relative; bottom: 1px; color: #fff; background: #2ba6cb; }
.label.radius { -webkit-border-radius: 3px; -moz-border-radius: 3px; -ms-border-radius: 3px; -o-border-radius: 3px; border-radius: 3px; }
.label.round { padding: 1px 7px 2px; -webkit-border-radius: 1000px; -moz-border-radius: 1000px; -ms-border-radius: 1000px; -o-border-radius: 1000px; border-radius: 1000px; }
.label.alert { background-color: #c60f13; }
.label.success { background-color: #5da423; }
.label.secondary { background-color: #e9e9e9; color: #505050; }
 
/* Panels ---------------------- */
.panel { background: #fafafa; border: solid 1px #ddd; margin: 0 0 22px 0; padding: 20px 25px 20px 25px; position:relative; }
.panel > :first-child { margin-top: 0; }
.panel > :last-child { margin-bottom: 0; }
.panel.callout { background: #2ba6cb; color: #fff; border-color: #2284a1; -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5); -moz-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5); box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5); }
.panel.callout a { color: #fff; }
.panel.callout .button { background: white; border: none; color: #2ba6cb; text-shadow: none; }
.panel.callout .button:hover { background: rgba(255, 255, 255, 0.8); }
.panel.radius { -webkit-border-radius: 3px; -moz-border-radius: 3px; -ms-border-radius: 3px; -o-border-radius: 3px; border-radius: 3px; }
.panel:after {
left: 4px;
right: 4px;
bottom: -5px;
box-shadow: 0 0 2px #ddd;
}
.panel, .panel:before, .panel:after {
background: #fafafa;
border: 1px solid #ddd;
}
.panel:before, .panel:after {
content: "";
position: absolute;
bottom: -3px;
left: 3px;
right: 3px;
height: 1px;
border-top: none;
}
.panel:hover {
-webkit-box-shadow: 0 0px 7px #ddd;
-moz-box-shadow: 0 0px 7px #ddd;
box-shadow: 0 0px 7px #ddd;
}